package com.electromagnetic.industry.software.manage.service;

import com.electromagnetic.industry.software.common.pojo.RespPageVO;
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
import com.electromagnetic.industry.software.manage.pojo.models.ImportTableInfo;
import com.electromagnetic.industry.software.manage.pojo.req.DownloadImportTableDataDTO;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.http.ResponseEntity;

import java.util.Map;

public interface ImportTableService {

    String addTableInfo(String relatedId, Map<Integer, Object> tableHeader);

    ElectromagneticResult<?> removeTableInfoByRelatedId(String relatedId);

    ImportTableInfo selectByIdRelatedId(String relatedId);

    ElectromagneticResult<?> removeTableInfoById(String id);

    ElectromagneticResult<?> updateTableInfo();

    ElectromagneticResult<?> selectTableInfoByRelatedId(String relatedId);

    String addTableData(String tableInfoId, String tableData);

    ElectromagneticResult<?> removeTableDataById(String id);

    ElectromagneticResult<?> updateTableData(String id, String tableHeader);

    RespPageVO selectTableDataByTableInfoId(Integer pageNum, Integer pageSize, String tableInfoId);

    ResponseEntity<byte[]> downloadTableData(DownloadImportTableDataDTO downloadImportTableDataDTO, HttpServletResponse response);
}
